package com.jzlin.funhub.admin.model.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.jzlin.funhub.framework.core.db.BaseEntity;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

/**
 * <p>
 * 用户表
 * </p>
 *
 * @author jzlin
 * @since 2025-07-11
 */
@Getter
@Setter
@TableName("sys_user")
@ApiModel(value = "SysUser对象", description = "用户表")
public class SysUser extends BaseEntity {

    /**
     * 用户名，唯一标识用户
     */
    private String username;

    /**
     * 用户邮箱
     */
    private String email;

    /**
     * 用户手机号
     */
    private String phone;

    /**
     * 密码
     */
    private String password;

    /**
     * 用户昵称
     */
    private String nickname;

    /**
     * 用户头像
     */
    private String avatar;

    /**
     * 用户最后登录时间
     */
    private Date lastLoginDate;

    /**
     * 用户是否已验证邮箱
     */
    private Boolean isEmailVerified;

    /**
     * 用户状态码
     */
    private Integer userStatus;

    /**
     * 个性签名
     */
    private String signature;

    /**
     * 发表文章数量
     */
    private Integer articleCount;

    /**
     * 文章评论数量
     */
    private Integer articleCommentCount;
    /**
     * 文章收藏数量
     */
    private Integer articleStarCount;
    /**
     * 提问数量
     */
    private Integer questionCount;
    /**
     * 回答数量
     */
    private Integer questionAnswerCount;
    /**
     * 问题收藏数量
     */
    private Integer questionStarCount;
    /**
     * 关注用户数量
     */
    private Integer followCount;
    /**
     * 粉丝数量
     */
    private Integer followedCount;
    /**
     * 个人封面
     */
    private String cover;
    /**
     * 允许发布文章
     */
    private Boolean allowBlog;
}
